package cn.ncist.config;


import cn.ncist.jobs.ClearImgJob;
import org.quartz.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class QuartzConfig {
    private static final String JOB_GROUP_NAME = "HL_JOB_GROUP_NAME";
    private static final String TRIGGER_GROUP_NAME = "HL_TRIGGER_GROUP_NAME";

    /**
     * 定时任务1：
     * 同步用户信息Job（任务详情）
     */
    @Bean
    public JobDetail ClearImgJobDetail(){
        return JobBuilder.newJob(ClearImgJob.class)
                .withIdentity("ClearImgJobDetail",JOB_GROUP_NAME)
                .storeDurably()
                .build();
    }

    /**
     * 定时任务1：
     * 同步用户信息Job（触发器）
     */
    @Bean
    public Trigger syncUserJobTrigger() {
        //每隔10秒执行一次
        CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule("0/10 * * * * ?");
//        CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule("0 0 2 * * ?");
        //创建触发器
        return TriggerBuilder.newTrigger()
                .forJob(ClearImgJobDetail())//关联上述的JobDetail
                .withIdentity("ClearImgTrigger",TRIGGER_GROUP_NAME)//给Trigger起个名字
                .withSchedule(cronScheduleBuilder)
                .build();
    }
}
